from qiniu import Auth, put_data, etag, config, BucketManager
import requests


def pic_upload(pic_data, key=None):
    """
    将用户二进制图片数据上传到七牛云存储平台
    :param pic_data: 图片二进制数据
    :return: 图片名称
    """

    # 需要填写你的Access Key 和Secret Key
    access_key = 'Yx31YbcInEcDtkJJZpIZ_0bKwYLHSAUjF9l5cCBM'
    secret_key = 'Mmx5JLbKgRkvwNB2P7V1H0GTw4uEK10OM06lxW7B'
    QINIU_BUCKET_NAME = 'circle'

    # 构建鉴权对象,验证用户身份
    q = Auth(access_key, secret_key)

    # private_download_url = q.private_download_url('http://wxyf.wpost.cn/FhPp9cF5t2vGORZsvO1U7Fu0WyfL', expires=20)

    # 要上传的空间名称
    bucket_name = QINIU_BUCKET_NAME

    # 上传后到七牛云保存的图片名称
    # key = 'my-python-log.png'
    # 如果该字段设置为None,七牛云就会自动分配一个唯一图片名称
    # key = None

    # 生成上传Token,可以指定过期时间等, token默认过期时间长1小时
    token = q.upload_token(bucket_name, key, 3600)

    # 要上传的二进制文件到七牛云存储平台
    ret, info = put_data(token, key, pic_data)

    # {'hash': 'FpymV3ZlaGQJcLhmu1CSGIK1bsUT', 'key': 'FpymV3ZlaGQJcLhmu1CSGIK1bsUT'}
    # key图片名称
    # print(ret)
    # print(info)

    # 返回图片名称
    return ret['key']


def pic_delete(key=None):
    """
    将用户二进制图片数据上传到七牛云存储平台
    :param pic_data: 图片二进制数据
    :return: 图片名称
    """

    # 需要填写你的Access Key 和Secret Key
    access_key = 'Yx31YbcInEcDtkJJZpIZ_0bKwYLHSAUjF9l5cCBM'
    secret_key = 'Mmx5JLbKgRkvwNB2P7V1H0GTw4uEK10OM06lxW7B'
    QINIU_BUCKET_NAME = 'circle'

    # 构建鉴权对象,验证用户身份
    q = Auth(access_key, secret_key)

    # 初始化BucketManager

    # private_download_url = q.private_download_url('http://wxyf.wpost.cn/FhPp9cF5t2vGORZsvO1U7Fu0WyfL', expires=20)

    # 要上传的空间名称
    bucket_name = QINIU_BUCKET_NAME

    bucket = BucketManager(q)

    ret, info = bucket.delete(bucket_name, key)
    # 上传后到七牛云保存的图片名称
    # key = 'my-python-log.png'
    # 如果该字段设置为None,七牛云就会自动分配一个唯一图片名称
    # key = None

    # 生成上传Token,可以指定过期时间等, token默认过期时间长1小时
    # token = q.upload_token(bucket_name, key, 3600)

    # 要上传的二进制文件到七牛云存储平台
    # ret, info = put_data(token, key, pic_data)

    # {'hash': 'FpymV3ZlaGQJcLhmu1CSGIK1bsUT', 'key': 'FpymV3ZlaGQJcLhmu1CSGIK1bsUT'}
    # key图片名称
    # print(ret)
    # print(info)

    # 返回图片名称
    return ''


if __name__ == '__main__':
    # url = 'https://seller-public-1251021158.picgz.myqcloud.com/upload/employee/temp/20220518/1652840920354_1652840920517459722.png'
    # response = requests.get(url)
    # print(pic_upload(response.content, key='youhuiquanyi/fidjdjd/1652840920354_1652840920517459722.png'))
    pic_delete('/youhuiquanyi/customer/13710787000/identification_front_copy.png')